﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace AgilePlannerDT.Data.Impl
{
    /// <summary>
    /// A modified Iteration that is used to group cards by State.
    /// </summary>
    /// The constructors below are modified versions of those found
    /// in IterationDataObject to preserve the Name property as 
    /// "Default StateArea" instead of "Default Iteration."
    /// See also: GestureModuleImpl.ProcessGesture (#region: Status_Area)
    /// See also: AgilePlannerMainWindow.xaml.cs.CreateIteration
    public class StateDataObject : IterationDataObject
    {
        public StateDataObject()
            : base(0, 0, "Default StateArea", "no description", CardConstants.STATEAREA_DEFAULT_WIDTH, 
            CardConstants.STATEAREA_DEFAULT_HEIGHT, CardConstants.INDEXCARD_DEFAULT_LOCATION_X, 
            CardConstants.INDEXCARD_DEFAULT_LOCATION_Y, 0.0f, DateTime.Today, DateTime.Today, 
            CardConstants.STATUS_DEFINED)
        {
            this.storycards = new List<StoryCard>();
        }

        public StateDataObject(long id, long parent)
            : base(id, parent, "Default StateArea", "no description",
            CardConstants.STATEAREA_DEFAULT_WIDTH, CardConstants.STATEAREA_DEFAULT_HEIGHT, 
            CardConstants.INDEXCARD_DEFAULT_LOCATION_X, CardConstants.INDEXCARD_DEFAULT_LOCATION_Y, 
            0.0f, DateTime.Today, DateTime.Today, CardConstants.STATUS_DEFINED) { }
    }
}